package com.sun.clients.properties;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * kafka消费者配置参数
 */
@Data
@Configuration
@ConfigurationProperties(prefix = "spring.kafka.consumer")
public class KafkaConsumerProperty {

    // 集群地址
    private String bootstrapServers;

    // 消费者组
    private String groupId;

    // 是否开启自动提交偏移量 默认：true
    private Boolean enableAutoCommit;

    // 自动提交时间间隔 默认：5000ms
    private Integer autoCommitInterval;

    // 最大拉取数量 默认：500
    private Integer maxPollRecords;

    // 最大拉取超时时间 默认：300000 单位：毫秒
    private Integer maxPollInterval;

    // 连接超时时间 默认：45000ms
    private Integer sessionTimeout;

    // 等待请求响应的最长时间 默认：300000 单位：毫秒
    private Integer requestTimeout;

    // 发送心跳请求间隔 默认：3000 单位：毫秒
    private Integer heartbeatInterval;

    // 消费位置 latest从分区末尾开始消费消息、earliest从起始处开始消费消息  默认：latest
    private String autoOffsetReset;

}
